import React, { Component } from 'react'
import { nanoid } from 'nanoid'  //这里需要安装npm i nanoid
import PropTypes from 'prop-types'//这里需要安装npm i prop-types
import './index.css'
export default class Header extends Component {
    //对接受到的props进行：类型、必要性的限制
    static propTypes = {
        addTodo: PropTypes.func.isRequired
    }
    //键盘事件的回调
    handleKeyUp = (event) => {
        //解构复制获取keyCode，target
        const { keyCode, target } = event
        //判断是否是回车按键
        if (keyCode != 13) return

        if (target.value.trim() === '') {
            alert('输入不能为空')
            return
        }
        //准备好一个todo对象
        const todoObj = { id: nanoid(), name: target.value, done: false }
        //将todoobj传递给父组件
        this.props.addTodo(todoObj)
        //清空输入
        target.value = "";

    }
    render() {
        return (
            <div className="todo-header">
                <input onKeyUp={this.handleKeyUp} type="tetx" placeholder="请输入你的任务名称，按回车键确认"></input>
            </div>

        )
    }
}
